package yl.hs.bmipfull.service.vehiclemanage.impl;


import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import yl.hs.bmipfull.daos.vehiclemanage.ITransSystemLogDao;
import yl.hs.bmipfull.pojo.vehiclemanage.TransSystemLogEntity;
import yl.hs.bmipfull.service.vehiclemanage.ITransSystemLogService;
import yl.hs.bmipfull.viewmodels.PageQuery;
import yl.hs.bmipfull.viewmodels.PageResult;

import java.util.List;

/**
 * 作用:  运输系统日志服务层接口实现<br/>
 * 创建时间: 2021年06月08日 15时10分37秒 <br/>
 *
 * @author 张凯
 */
@Service
public class TransSystemLogServiceImpl extends VehicleBaseService implements ITransSystemLogService {

    @Autowired
    ITransSystemLogDao dao;

    @Override
    public List<TransSystemLogEntity> queryList(PageQuery pageQuery) throws Exception {
        pageQuery.checkSortSides(TransSystemLogEntity.class);
        return dao.queryList(pageQuery.getQuery());
    }

    @Override
    public PageResult<TransSystemLogEntity> queryPage(PageQuery pageQuery, int rowNum, int page) throws Exception {
        pageQuery.checkSortSides(TransSystemLogEntity.class);
        pageQuery.getQuery().put("querySkip", (page - 1) * rowNum);
        pageQuery.getQuery().put("pageSize", rowNum);
        PageResult<TransSystemLogEntity> result = new PageResult(rowNum);
        result.setRecords(dao.queryCountByCondition(pageQuery.getQuery()));
        result.setPage(page);
        result.setData(dao.queryPage(pageQuery.getQuery()));
        return result;
    }


    @Override
    public TransSystemLogEntity findBySn(String sn) {
        return dao.findBySN(sn);
    }

    @Override
    @Transactional
    public Integer saveTransSystemLog(TransSystemLogEntity entity) {
        return dao.insertNew(entity);
    }

    @Override
    public List<TransSystemLogEntity> queryByDataSn(String dataSn) {

        return dao.queryByDataSn(dataSn);
    }
}